//package com.geese.module.security.controller;
//
//import com.geese.common.BaseController;
//import com.geese.common.MyResult;
//import com.geese.common.entity.Role;
//import com.geese.module.security.service.PermissionService;
//import com.geese.module.security.service.RoleService;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.context.annotation.Scope;
//import org.springframework.stereotype.Controller;
//import org.springframework.web.bind.annotation.*;
//
//import java.util.*;
//
///**
// * Created by Z先生 on 2017/2/27.
// */
//@Controller
//@RequestMapping(value = "/admin")
//@Scope("prototype")
//public class SecurityController extends BaseController{
//
//    @Autowired
//    RoleService roleService;
//
//    @Autowired
//    PermissionService permissionService;
//
//    @ResponseBody
//    @GetMapping(value = "/permission/all")
//    public MyResult allPer(Integer pid) {
//        Map map = new HashMap();
//        if (pid == null || pid == 0) {
//            map.put("childPermissions", permissionService.findAllChildPermission());
//            map.put("permissions", permissionService.findByPid(0));
//        } else {
//            map.put("childPermissions", permissionService.findByPid(pid));
//            map.put("permissions", permissionService.findByPid(0));
//        }
//        return MyResult.success(map);
//    }
//
//
//    @ResponseBody
//    @PostMapping(value = "/permission/add")
//    public MyResult savePer(Permission permission) {
//        if (permission.getPid() == null) {
//            permission.setPid(0);
//        }
//        return MyResult.success(permissionService.save(permission));
//    }
//
//    @ResponseBody
//    @PostMapping(value = "/permission/{id}/edit")
//    public MyResult editPer(@PathVariable int id, Permission permission) {
//        permission.setId(id);
//        return MyResult.success(permissionService.edit(permission));
//    }
//
//    @ResponseBody
//    @GetMapping(value = "/permission/{id}/delete")
//    public MyResult deletePer(@PathVariable int id) {
//        permissionService.delete(id);
//        return MyResult.success();
//    }
//
//
//    @ResponseBody
//    @GetMapping(value = "/role/all")
//    public MyResult allRole() {
//        return MyResult.success(roleService.findAll());
//    }
//
//
//    @ResponseBody
//    @PostMapping(value = "/role/{id}/addper")
//    public MyResult saveRolePer(@PathVariable int id, String permissionIds){
//        List list = Arrays.asList(StringToInt(permissionIds.split(",")));
//        roleService.addRolePer(id,new HashSet<>(list));
//        return MyResult.success();
//    }
//
//    @ResponseBody
//    @GetMapping(value = "/role/{id}/deleteper")
//    public MyResult deleteRolePer(@PathVariable int id, String permissionIds){
//        List list = Arrays.asList(StringToInt(permissionIds.split(",")));
//        roleService.deleteRolePer(id,new HashSet<String>(list));
//        return MyResult.success();
//    }
//
//}
